home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 46
/
Amiga Format CD46 (1999-10-20)(Future Publishing)(GB)[!][issue 1999-12].iso
/
-in_the_mag-
/
reader_requests
/
pdflib
/
readme
< prev
next >
Wrap
Text File
|
1999-09-16
|
6KB
|
187 lines
PDFlib V0.6
===========
Portable C library for dynamically generating PDF ("Adobe Acrobat") files.
Thomas Merz (tm@muc.de)
The PDFlib distribution is available from the following URL:
http://www.ifconnection.de/~tm
Overview
========
PDFlib is a C library for generating PDF files. It offers a graphics
API with support for drawing, text, font and images. Call PDFlib
routines from within your client program and voila: dynamic PDF files!
For detailed instructions on PDFlib programming and the associated API,
see the PDFlib Programming Manual, included in PDF format in the
PDFlib distribution.
Using a cute facility called SWIG, PDFlib can also be used from
within the Perl, Tcl, and Python scripting languages. As of version
0.6, scripting support is only available for Unix systems.
Features
========
- basic drawing
lines, rectangles, arcs, Bezier curves, ...
gray scale or RGB color
- text
text in different fonts and sizes, formatting
type 1 font embedding, AFM support
- output formats
ASCII85, ASCIIHex, or binary
- graphics file formats
support for TIFF, GIF, and JPEG files
- hypertext features
bookmarks (outline entries)
page transitions
PDFlib application ideas
========================
- Dynamic PDF generation via CGI from a Web server
- Directly convert text or graphics files to PDF
- Report generator for applications such as databases
- Substitute for Adobe's PDFwriter
- ... you name it!
Supplied Library Clients
========================
PDFlib includes some demo, test, and "real" client programs:
- hello: simple "hello, world!" program
- pdfdemo: illustrates many PDF features
- imagepdf: convert GIF/TIFF/JPEG images to PDF
- text2pdf: convert text files to PDF
- pdfclock: generate a PDF file with one or more analog clock images
- pdfgraph: draw a graph according to data read from a text file
- the hello and pdfclock samples are also available in Perl, Tcl,
and Python implementations
Platform support
================
PDFlib is primarily targeted at Unix systems, although the code
compiles under other systems, too.
As far as the C source code is concerned, porting to other platforms
should be straightforward. You will however have to fiddle with
the build process.
Building the library on Unix systems
====================================
The library is being developed with GNU C on Linux. If you have a
similar setup, simply copy or link makefile.gcc and call make:
ln -s makefile.gcc makefile
make test
This builds the library, the supplied library clients, and runs some tests.
If you don't have or don't want tifflib, read the comments at the
beginning of the makefile and remove the TIFF options.
For other systems you may have to change compiler and path settings.
To check for correct program generation, you can do a "make test"
and open the PDF files in the test subdirectory with Acrobat Reader
or xpdf. Note that the test run produces several warning messages
-- this is OK.
If your system doesn't offer getopt, you can use the supplied
public domain getopt module instead. By default, this module
is not used, so you have to add it manually in the makefile.
Building the library on Windows NT
===================================
I also test-compiled the library with Watcom C/C++ 10.6. Use the
supplied makefile.wat for this platform. Since the makefile uses
backslashes for line continuation, you have to supply the unix
compatibility option to Watcom make:
copy makefile.wat makefile
wmake /u test
External code/libs used in PDFlib (why re-invent the wheel?)
=================================
PDFlib heavily relies on other people's code, although some of it is
not currently in use:
- Sam Leffler's TIFFlib (only if you want to read TIFFs with PDFlib)
available from ftp://ftp.sgi.com/graphics/tiff/doc
- Adobe's AFM parser
(supplied with PDFlib)
- ZLIB compression library (soon to be used for PDF 1.2 compatible compression)
available from http://www.cdrom.com/pub/infozip/zlib
- PD getopt module
(supplied with PDFlib, rarely needed on Unix systems)
- IJG's JPEG library for certain non-PDF-compatible JPEGs
(not yet used)
- A rewrite of David Koblas' giftoppm.c
(supplied with PDFlib)
A Shameless Plug
================
My latest book has more information on PDFlib and PDF/Web integration.
The book is currently available in German and English:
Mit Acrobat ins World Wide Web
Effiziente Erstellung von PDF-Dateien und ihre Einbindung ins Web.
Thomas Merz Verlag Muenchen 1997, ISBN 3-9804943-1-4.
Web Publishing with Acrobat/PDF
Springer-Verlag Heidelberg Berlin New York 1998, ISBN 3-540-63762-1
To find out more about PDF, Acrobat, and PostScript in general,
read my book:
PostScript & Acrobat/PDF
Applications, Troubleshooting, and Cross-Platform Publishing
Including CD-ROM for MS-DOS/Windows/Macintosh/Unix ISBN 3-540-60854-0,
Springer Verlag, Heidelberg, Berlin, New York 1996
orders@springer.de
The book is also available in German:
Die PostScript- und Acrobat-Bibel
Was Sie schon immer ueber PostScript und Acrobat/PDF wissen wollten.
CD-ROM fuer MS-DOS/Windows/Macintosh/Unix. ISBN 3-9804943-0-6
Thomas Merz Verlag, Muenchen, Fax +49/89/29 16 46 86
Use and Copyright
=================
This software is subject to the "ALADDIN FREE PUBLIC LICENSE". The
complete text of the license agreement can be found in the file
LICENSE. In short and non-legal terms:
- You may use and distribute PDFlib non-commercially
- You may develop free software with PDFlib
- You may NOT sell any software based on PDFlib without
prior written permission from the author.
- If you write PDFlib programs and sell them, you need a commercial license
Note that this is only a 10-second-description which is not legally
binding. Only the text in the LICENSE file is considered to completely
describe the licensing conditions.
If you use this software you need to honor the copyright notices. I would
also be interested in knowing about it and, hopefully, be acknowledged.
Copyright (c) 1997-98 Thomas Merz. All rights reserved.
Thomas Merz
Consulting & Publishing
Tal 40
80331 Muenchen, Germany
tm@muc.de
http://www.ifconnection.de/~tm
fax +49/89/29 16 46 86